Connecting computers with printers over a network allows each computer to use each printer via the network. In this regard, a technique is known such that a user of a client computer uses a Web browser to enter print settings through a Web-page user interface (hereinafter abbreviated as a Web UI) provided by a server computer.
In a case that a document created with an application running on a client computer is printed, an outputting printer is selected, print settings are entered with a Web browser and the document is sent to a server computer via the Web browser. In the server computer, a print application reads the document and uses the print settings information to issue a rendering instruction for printing. A printer driver executed on the server computer converts the rendering instruction into a print instruction interpretable by the outputting printer and sends the print instruction to the outputting printer. The outputting printer performs print operations according to the received print instruction. In this manner, conventionally a desired printed document can be obtained (for example, see Japanese Patent Laid-Open No. 2007-328639).
In cloud computing such as SaaS (Software as a Service), applications run on a server computer and a user of a client computer uses the applications through a Web browser. Here, description will be given using a block diagram shown in FIG. 6 for a case called cloud printing, in which a document created with an application running on a server computer is printed. First, through a Web browser on a client computer, printing is instructed to the application, an outputting printer is selected, and print settings are entered. The server computer converts the application document into a general electronic document format such as PDF (Portable Document Format) and sends the converted document along with the print settings information to a print proxy computer. A print proxy application 621 running on the print proxy computer issues a rendering instruction based on the received print setting information and electronic document. A printer driver executed on the print proxy computer converts the rendering instruction into a print instruction interpretable by the outputting printer and sends the print instruction to the outputting printer. The outputting printer performs print operations according to the received print instruction. In this manner, conventionally a desired printed document can be obtained (for example, see Google code, “Google Cloud Print (Labs)”, retrieved on Oct. 13, 2010, URL: http://code.google.com/apis/cloudprint/).
Unfortunately, such conventional approaches involve a first inconvenience: print setting items related to characteristic functions of each printer cannot be provided in a user-friendly form on a Web UI for entering print settings. This is because, with a common Web UI applicable to various printers, it is difficult to display functions characteristic of a specific printer model together as a group, or to preferentially display frequently used print setting items. For example, a function called borderless printing is to perform printing with no borders along the edges of a print sheet. Another function is to print two pages of a document on one sheet with a layout called 2-in-1. Borderless printing is often set when an image is printed, while 2-in-1 is often set when a document of many pages is printed. Since these setting items are frequently set, displaying these setting items together with high priority on a Web UI would improve the operability in print setting.
In the cloud computing described above, the server computer obtains print setting capability information from the print proxy computer. The print setting capability information is a set of setting items that should be included in the print setting information and setting values settable for each setting item. The print setting capability information does not include display priority and information for displaying certain print setting items together. Consequently, for example, a common Web UI may take a form that simply lists setting items. It is difficult to provide a Web UI that displays certain setting items together depending on a factor such as printer model, or that preferentially displays particular setting items.
Given a detailed knowledge of functions of printers to be used, certain print setting items could be displayed together in the Web UI. However, a software vendor that provides cloud computing is different from hardware vendors that manufacture printers and therefore does not have a detailed knowledge of the printers. Further, printers of various models manufactured by various vendors are on the market, and there is a wide choice of printers. In the light of these facts, changing the print setting screen depending on the outputting printer is unrealistic and the Web UI can only provide a printer-independent common print setting screen.
In the above-described case in which the printer driver running on the serer computer is used for printing, characteristic print setting items corresponding to the outputting printer cannot be provided in a user-friendly form unless a Web application for generating the Web UI is changed depending on the outputting printer. However, considering that various printers are on the market, changing the Web application for generating the Web page UI depending on the outputting printer is unrealistic and the Web UI actually cannot provide characteristic print setting items of the printer in a user-friendly form.
In addition to the first inconvenience, the conventional approaches also involve a second inconvenience: the Web UI of a print setting screen does not allow entering print settings while maintaining consistency of the print settings, leading to a print result that does not conform to the enter print settings. This occurs because contradictory setting values can be entered for two or more print setting items. Take an example of the setting item “the type of printing paper” and the setting item “double-sided printing.” It would be preferable to control the display on the print setting screen so that the user can enable double-sided printing only when the user selects printing paper capable of double-sided printing on the print setting screen. However, in conventional art, since only the printer driver has priority among setting items and adjusts consistency, the Web UI cannot maintain the consistency of print settings with respect to the user's entry. As a result, the printer driver adjusts the consistency of print settings when the print proxy application performs printing, and this causes the second inconvenience, i.e., printing is performed according to print settings different from user-entry print settings.